/**
 * 
 */
package cream.alarm.model;

import java.util.Date;

/**
 * 包含闹钟基本元素
 * 
 * @author Cream
 * @since 1.0 2012-01-16
 */
public class AlarmClock {

	// 闹铃时间
	private Date alarmTime;

	// 重复模式
	private RepeatRule repeatRule;

	// 闹铃开关
	private boolean isActive;

	// 贪睡，单位：分钟
	private int snooze;

	// 标签，用于用户备注
	private String label;

	// 铃声
	private String ringtone;

	/**
	 * 返回闹钟时间
	 * 
	 * @return the alarmTime
	 */
	public Date getAlarmTime() {
		return alarmTime;
	}

	/**
	 * 设置闹钟时间
	 * 
	 * @param alarmTime
	 *            the alarmTime to set
	 */
	public void setAlarmTime(Date alarmTime) {
		this.alarmTime = alarmTime;
	}

	/**
	 * 返回重复模式
	 * 
	 * @return the repeatRule
	 */
	public RepeatRule getRepeatRule() {
		return repeatRule;
	}

	/**
	 * 设置重复模式
	 * 
	 * @param repeatRule
	 *            the repeatRule to set
	 */
	public void setRepeatRule(RepeatRule repeatModel) {
		this.repeatRule = repeatModel;
	}

	/**
	 * 闹钟开关
	 * 
	 * @return the isActive
	 */
	public boolean isActive() {
		return isActive;
	}

	/**
	 * 调协开关
	 * 
	 * @param isActive
	 *            the isActive to set
	 */
	public void setActive(boolean isActive) {
		this.isActive = isActive;
	}

	/**
	 * 贪睡时间
	 * 
	 * @return the snooze
	 */
	public int getSnooze() {
		return snooze;
	}

	/**
	 * 设置贪睡时间
	 * 
	 * @param snooze
	 *            the snooze to set
	 */
	public void setSnooze(int snooze) {
		this.snooze = snooze;
	}

	/**
	 * 用户标签
	 * 
	 * @return the label
	 */
	public String getLabel() {
		return label;
	}

	/**
	 * 设置用户标签
	 * 
	 * @param label
	 *            the label to set
	 */
	public void setLabel(String label) {
		this.label = label;
	}

	/**
	 * 闹钟铃声
	 * 
	 * @return the ringtone
	 */
	public String getRingtone() {
		return ringtone;
	}

	/**
	 * 设置闹钟铃声
	 * 
	 * @param ringtone
	 *            the ringtone to set
	 */
	public void setRingtone(String ringtone) {
		this.ringtone = ringtone;
	}

	@Override
	public String toString() {
		return "AlarmClock [alarmTime=" + alarmTime + ", repeatModel="
				+ repeatRule + ", isActive=" + isActive + ", snooze=" + snooze
				+ ", label=" + label + ", ringtone=" + ringtone + "]";
	}
}
